package com.xoa.service.hr.hrPersonnelScheduling;


import com.xoa.model.duties.UserPost;
import com.xoa.model.hr.HrStaffInfo;
import com.xoa.model.hr.hrDispatcher.HrDispatcher;
import com.xoa.model.hr.hrPersonnelScheduling.HrShedulingLog;
import com.xoa.model.position.UserJob;
import com.xoa.util.ToJson;
import com.xoa.util.common.wrapper.BaseWrapper;
import org.springframework.stereotype.Service;

import javax.servlet.http.HttpServletRequest;


/**
 * @author 人员调度
 *        王禹萌
 * @date 2018/10/23 13:22
 * @desc
 */
@Service
public interface HrPersonnelSchedulingService {
   ToJson<HrStaffInfo> queryPeopleSchedulingList(String userId, String deptId, Integer projectName, String workJob, Integer locationAddress, String position,Integer page,Integer pageSize,Boolean useFlag);

   ToJson<HrDispatcher> selectHrDispatcherList(String userId, String deptId, Integer projectName, String workJob, Integer locationAddress, String position, Integer page, Integer pageSize, Boolean useFlag);

   ToJson<HrDispatcher> loadHrDispatcherPages(Integer page,Integer pageSize);

   ToJson<HrDispatcher> selectHrDispatcherDetail(String assessScore);

   BaseWrapper insertHrShedulingLogList(String userId, String locationAddress, String projectName,String jobPosition,String workJob, String staffId, HttpServletRequest request,String assessScore,String assessment,Integer openShut);

   ToJson<HrShedulingLog>  queryHrShedulingLogList(String projectName,String address,String dispatcher,String userId,Integer page,Integer pageSize,Boolean useFlag);

   BaseWrapper queryHrShedulingLogList(String projectName);

   BaseWrapper queryPostSchedulingStatistics();

   ToJson<HrStaffInfo> hrStaffInfo(Integer staffId);

   ToJson<HrDispatcher> selectHrDispatcherDetails(Integer staffId, String userId);

   ToJson hrStaffInfoStatistical(String projectName,String locationAddress);

   ToJson<UserPost> getUserPost();

   ToJson<UserJob> getUserJob();
}
